One of the greatest challenges facing information technology managers is managing enterprise systems, applications, and networks as they become larger and more complex. In order to help solve these problems and reduce the total cost of ownership (TCO) of Windows-based servers and desktops, Microsoft has developed Windows Management Instrumentation (WMI), a scalable management infrastructure, and included it as part of the Windows Operating System.
WMI is the Microsoft implementation of Web-Based Enterprise Management (WBEM)—an industry initiative to develop a standard technology for accessing management information in an enterprise environment. The WBEM initiative results from the cooperative efforts of Microsoft, BMC Software, Cisco Systems, Compaq Computer, and Intel, as well as many other member companies active in the Distributed Management Task Force (DMTF). To represent systems, applications, networks, devices, and other managed components adopted by the DMTF, WMI uses the Common Information Model (CIM) defined by DMTF. WMI includes the managed objects defined by CIM as well as extensions to the CIM model for additional information available from the Windows platform.
The WMI architecture consists of the management infrastructure and WMI providers. A management infrastructure includes the CIM Object Manager (CIMOM) and a central storage area for management data called the CIMOM Object Repository. The CIMOM provides applications with uniform access to management data. WMI providers function as intermediaries between CIMOM and managed objects. CIMOM hides the capabilities of specific providers from WMI-based management applications, presenting a uniform set of capabilities (data retrieval and update, query, method execution, and events) through a single API irrespective of the capabilities of the underlying provider.
This layered architecture provides for seamless expansion of the WMI framework by allowing more providers to be added into this architecture as needed. The need for new providers arises when new managed resources are introduced into the computing environment or existing resources go through significant changes. Lately, computer processors have become one of those significantly changed resources.
Processors have been, and remain, the core of computer systems. With the advances in processor designs, multi-processor systems have become available. WMI was keeping up with those changes—through the built-in providers and pre-defined classes, such as Win32_Processor and Win32_ComputerSystemProcessor, by way of example. WMI was capable of providing consistent and meaningful management information about physical processors present in the computer system. However, the situation has changed with the introduction by Intel the new line of Pentium IV processors with the hyper-threading technology.
A single physical hyper-threading-capable processor is capable of managing two threads of program execution simultaneously and thus appears to the host operating system as two “virtual” CPUs, which, from the OS perspective, are indistinguishable from two physical CPUs. Thus, on the hyper-threading-enabled systems, the OS and, subsequently, WMI will report double the number of physical CPUs present on the system. Obviously, from the asset management perspective, this is unacceptable.